﻿using System;
using System.Data.SqlServerCe;
using System.Windows.Forms;

namespace PWDepositary
{
    public sealed partial class Form2 : Form
    {
        public readonly int FormState;
        public Form2()
        {
            InitializeComponent();
            FormState = 0;
        }

        public Form2(int formState)
        {
            InitializeComponent();
            Text = "Изменение пароля";
            lblPW.Text = "Укажите старый пароль:";
            lblPW2.Text = "Укажите новый пароль:";
            FormState = formState;
        }

        private void menuItemCancel_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void menuItemOK_Click(object sender, EventArgs e)
        {
            if (FormState == 0)
            {
                if (tBxPW.Text == tBxPW2.Text && tBxPW.Text.Length > 4)
                {
                    Cursor.Current = Cursors.WaitCursor;
                    Database.CreateDatabase(tBxPW.Text);
                    Close();
                }
                else
                {
                    MessageBox.Show("Введенные пароли не совпадают или их длинна менее 4х символов!", "Ошибка",
                                    MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation,
                                    MessageBoxDefaultButton.Button1);
                    tBxPW.Text = tBxPW2.Text = "";
                }
            }
            else
            {
                //if (tBxPW2.Text.Length > 4)
                //{
                    //Cursor.Current = Cursors.WaitCursor;
                    //SqlCeConnection connection = null;
                    //try
                    //{
                    //    connection = new SqlCeConnection(Database.ConnectString + tBxPW.Text);
                    //    connection.Open();
                    //}
                    //catch
                    //{
                    //    MessageBox.Show("Старый пароль набран не верно", "Ошибка",
                    //                    MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation,
                    //                    MessageBoxDefaultButton.Button1);
                    //    tBxPW.Text = tBxPW2.Text = "";
                    //}
                    //finally
                    //{
                    //    Cursor.Current = Cursors.Default;
                    //    if (connection != null) connection.Close();
                    //}
                    Database.ChangePassBd(tBxPW.Text);
                    Close();
                //}
                //else
                //{
                //    MessageBox.Show("Длинна нового пароля менее 5-ти символов!", "Ошибка",
                //                    MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation,
                //                    MessageBoxDefaultButton.Button1);
                //    tBxPW.Text = tBxPW2.Text = "";
                //}
            }
        }

        private void tBxPW_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                tBxPW2.Focus();
            }
        }

        private void tBxPW2_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                menuItemOK_Click(sender, e);
            }
        }
    }
}